import { currentDates, iphoneFn } from '../../utils/util'
const app = getApp()
Page({
  data: {
    imgurl: app.globalData.imgurl,
    // 当前体验时间
    hour: 0,
    // 当前选中时间的小时
    hou: 0,
    // 最小选择日期
    minDate: new Date().getTime(),
    // 当前选中日期
    currentDate: '',
    // 当前选中时间
    currentTimeL: '',
    //时间的隐藏
    showTime: false,
    // 日期的隐藏
    showDate: false,
    // 最小小时
    minHour: 10,
    // 最大小时18点但是不可选中18点
    maxHour: 17,
    // 过滤时间选项
    filter(type, options) {
      if (type === 'minute') {
        return (options = ['00', '30'])
      }
      return options
    },
    // 成人数量
    adult_num: 0,
    // 儿童数量
    child_num: 0,
    // 特殊要求
    remark: '',
    // 手机号
    phone: '',
  },
  onLoad({ s_id }) {
    this.setData({
      s_id,
    })
    this._getDetail(s_id)
  },
  // 获取详情
  async _getDetail(s_id) {
    let { code, data } = await wx.requestAsync({
      url: '/shop/detail',
      data: {
        s_id,
      },
    })
    if (code == 0) {
      data.phone = null
      data.pic = this.data.imgurl + data.pic
      this.setData(data)
    }
  },
  // 确认日期
  _getDate({ detail }) {
    this.setData({
      currentDate: currentDates(detail),
      showDate: false,
    })
  },
  // 确认时间
  _getTime({ detail }) {
    let hou =
      detail.split(':')[0] - 0 + (detail.split(':')[1] - 0 == 30 ? 0.5 : 0)

    this.setData({ currentTime: detail, showTime: false, hou, hour: 0.5 })
  },
  // 增加时间
  onChangeStop({ detail }) {
    this.setData({
      hour: detail - 0,
    })
  },
  // 增加成人人数
  onChangeadult({ detail }) {
    this.setData({
      adult_num: detail,
    })
  },
  // 增加儿童人数
  onChangechild({ detail }) {
    this.setData({
      child_num: detail,
    })
  },
  onClosePhone({ detail }) {
    this.setData({
      phone: detail,
    })
  },
  onCloseRemark({ detail }) {
    this.setData({
      remark: detail,
    })
  },
  async submit() {
    const {
      s_id,
      remark,
      phone,
      child_num,
      adult_num,
      hour,
      currentDate,
      currentTime,
    } = this.data
    if (!(child_num && adult_num && hour && currentDate))
      return wx.showToast({
        title: '请填写必填项',
        icon: 'none',
      })
    if (!iphoneFn(phone)) return false
    let pre_at = new Date(currentDate + ' ' + currentTime).getTime() / 1000
    let { code } = await wx.requestAsync({
      url: '/pre/party',
      data: {
        s_id,
        pre_at,
        hour,
        adult_num,
        child_num,
        phone,
        remark,
      },
    })
    if (code == 0) {
      wx.showToast({
        title: '预约成功',
        icon: 'none',
        duration: 2000,
        success: () => {
          setTimeout(() => {
            wx.redirectTo({
              url: '/pages/offline/offline',
            })
          }, 1000)
        },
      })
    }
  },
  // 日期显示
  showDate() {
    this.setData({ showDate: true })
  },
  // 控制显示时间的隐藏
  showTime() {
    this.setData({ showTime: true })
  },
  //关闭日期
  onCloseDate() {
    this.setData({ showDate: false })
  },
  //关闭时间
  onCloseTime() {
    this.setData({ showTime: false })
  },
})
